home *** CD-ROM | disk | FTP | other *** search
/ Atari Forever 4 / Atari Forever 4.zip / Atari Forever 4.iso / SERIE_S / S_794 / SMF_PLAY / SMF_PLAY.TXT < prev   
Text File  |  1998-03-14  |  29KB  |  699 lines

  1.  
  2.  
  3.  
  4.                           Anleitung zu "SMF-PLAYer"
  5.                           Standard-MIDI-File-Player
  6.                       © 1994,1995 by Bogi-Productions
  7.                                   FAIRWARE
  8.  
  9.                                 Peter Bogner
  10.                                Humbserstr. 10
  11.                                 D-90763 Fürth
  12.                E-Mail: prbogner@cip.informatik.uni-erlangen.de
  13.  
  14.                  30. Mai 1994 - Letzte Änderung: 3. März 1995
  15.  
  16.  
  17.  
  18.  
  19. Inhaltsverzeichnis
  20. ==================
  21.  
  22. 1) Intro
  23. 2) Was läuft ab?
  24. 3) Die Haupt-Dialogbox
  25.   3.1) Button 'Open SMF...'
  26.   3.2) Button 'Settings...'
  27.   3.3) Button 'Play'
  28.   3.4) Button 'Stop'
  29.   3.5) Button 'Info'
  30.   3.6) Button 'Quit'
  31. 4) Die Settings-Dialogbox
  32. 5) Die Copyright-Dialogbox
  33. 6) Beschränkungen des Programms bzgl. Standard-MIDI-Files
  34. 7) Systemanforderungen
  35.   7.1) Betrieb als Programm
  36.   7.2) Betrieb als Accessory
  37. 8) Sonstiges
  38.   8.1) Automatisches Laden - Übergabeparameter
  39.   8.2) Abbrechen des Abspielvorganges
  40. 9) In eigener Sache
  41.   9.1) Werbung - Andere MIDI-Programme von mir
  42.   9.2) Credits
  43.   9.3) Aufruf an Benutzer des Programmes
  44.   9.4) Geplantes...
  45. 10) Nutzungs-, Verbreitungs- und sonstige Bestimmungen
  46.   10.1) Nutzungsbestimmungen
  47.   10.2) Vertrieb
  48.   10.3) Haftung
  49.   10.4) Updates
  50.   10.5) Warenzeichen
  51. 11) Schlußwort
  52. 12) Literatur
  53.  
  54.  
  55. 1) Intro
  56. ========
  57.  
  58. Nun ist es wieder mal soweit,  ein weiteres Programm von mir  wird  veröffent-
  59. licht.
  60.  
  61. Auch  diesmal  sind  in  dieser  Dokumentation  zahlreiche  Fehler  aller  Art
  62. versteckt. Wer sie alle findet, der bekommt ...
  63.  
  64. ...eine komplette fehlerfreie Anleitung, wenn er die Fehler selbst ausbessert.
  65. ;-)
  66.  
  67. Für die faulen Benutzer (= Benutzer,  die nicht  komplette  Anleitungen  lesen
  68. wollen - ich gehöre übrigens auch zu dieser Personengruppe) folgt nun kurz ein
  69. Funktionsüberblick über die Leistungsfähigkeit des Programms:
  70.  
  71. Es handelt sich dabei um einen Standard-MIDI-File-Player (kurz SMF):
  72.  
  73.  - GEM-konforme Programmierung (hoffe ich zumindest!)
  74.  
  75.  - Dialog-Boxen in GEM-Fenster
  76.  
  77.  - sollte mit allen ST, STE, Mega STE, TT und Falcon funktionieren?
  78.  
  79.  - läuft auch als Accessory
  80.  
  81.  - spielt SMF-Format 0 und Format 1 (bis 32 Tracks).  Die maximale  Dateilänge
  82.    beträgt 131072 Bytes.
  83.  
  84.  - es kann eingestellt werden,  ob 'Program Change',  'Control Change'  'Pitch
  85.    Bend', 'Channel-' und/oder 'Key-Pressure', 'Sysex-Daten', 'Bank Select' und
  86.    'MIDI-Clock' beim Abspielen mit ausgegeben werden sollen
  87.  
  88.  
  89. 2) Was läuft ab?
  90. ================
  91.  
  92. Nach dem Starten des Programmes sollte eine Dialog-Box (in einem  GEM-Fenster,
  93. wie es sich heutzutage gehört) dargestellt werden.
  94.  
  95. Die Dialogboxen sind übrigens in englischer  Sprache  gehalten  (zumindest  in
  96. englisch-ähnlicher Sprache  ;-)),  dürften  aber  auch  für  Nicht-Anglistiker
  97. verständlich sein.  Falls dies nicht der Fall sein sollte, dürfte das Programm
  98. ohnehin nicht für den betreffenden Anwender brauchbar sein.
  99.  
  100. Wer z.B.  sich unter 'Midi Clock' eine Miniaturuhr  vorstellt,  oder  'Channel
  101. Pressure' nur mit Kanal-Druck (was 'n dat? -  vielleicht  der  Wasserdruck  im
  102. Abwasserkanal?) übersetzt dürfte auch mit den Fähigkeiten modernster  aus  ja-
  103. panisch-digitalien stammenden Klangerzeuger wenig vertraut sein, und somit als
  104. Zielgruppe für Programme dieser Art ausfallen.
  105.  
  106. Na,  hast Du's gemerkt,  anstelle das ich eine vernünftige Anleitung  schreibe
  107. schweife ich ab, also weiter mit dem eigentlichen Anliegen dieses Textes.
  108.  
  109.  
  110. 3) Die Haupt-Dialogbox
  111. ======================
  112.  
  113. Die Haupt-Dialogbox besteht im wesentlichen aus drei Bestandteilen:
  114.  
  115.  - Den Funktions-Buttons 'Open SMF...', 'Settings...', 'Stop' und 'Play'.
  116.  
  117.  - Einem Anzeigefeld: 'Filename', 'Format' und 'Tracks'.
  118.  
  119.  - Sowie dem wichtigsten Teil: dem 'Info-Button' - unbedingt ausprobieren.
  120.  
  121. 3.1) Button 'Open SMF...'
  122. -------------------------
  123.  
  124. Über diesen Button bzw.  der Tastenkombination 'Alternate-O' wird das Programm
  125. veranlaßt,  die übliche Fileselektorbox anzuzeigen, mit der ein SMF ausgewählt
  126. werden kann, welches wiederum eingeladen werden kann. (Welch ein schöner Satz!
  127. - Mit solchen Sätzen habe ich schon in früheren Jahren  einige  Deutsch-Lehrer
  128. genervt,  aber soviel zur Beruhigung,  mein Englisch ist noch viel  schlimmer,
  129. also seit froh, daß ich diese Anleitung in einer Sprache verfasse, die ich als
  130. meine Muttersprache bezeichne. ;-))
  131.  
  132. Um ein SMF zu laden kann man (und frau -  wo  sind  die  MIDIanerinnen?)  auch
  133. anstelle des 'Open'-Buttons auch auf den Filenamen klicken,  wohl gemerkt  auf
  134. den Filenamen, nicht auf den Text 'Filename'!
  135.  
  136. Nach erfolgreichen Laden  wird unter Filename der aktuelle Dateiname  des sich
  137. im Speicher befindlichen SMF eingetragen.
  138. Außerdem wird angezeigt,  um welches SMF-Format (Format:) es sich handelt, so-
  139. wie die Anzahl der Tracks (Tracks:).
  140.  
  141. 3.2) Button 'Settings...'
  142. -------------------------
  143.  
  144. Über diesen Button bzw.  der Tastenkombination 'Alternate-S' wird das Programm
  145. veranlaßt, die 'Play-Parameter'-Dialogbox aufzurufen. Diese wird in einem spä-
  146. teren Abschnitt dieses Textes (hoffentlich) genauer  erklärt  (sofern  ich  es
  147. nicht vergesse!).
  148.  
  149. 3.3) Button 'Play'
  150. ------------------
  151.  
  152. Welche Funktion könnte sich denn  dahinter  verstecken?  -  Selbstverständlich
  153. wird damit, bzw. der Tastenkombination 'Alternate-P' die Abspielfunktion akti-
  154. viert und damit das ganze abgespielt (ein Programm,  das SMFs nur Laden  kann,
  155. aber nicht in irgendeiner Weise verarbeiten kann macht ja auch nicht sehr viel
  156. Sinn!).  Das ganze kann natürlich nur erfolgen,  sofern ein SMF geladen wurde,
  157. oder was soll denn abgespielt werden - vielleicht  irgendwelche  Zufallsmuster
  158. aus dem Speicher (wow,  ein neues Kompositionsprogramm) - das Klangergeb- bzw.
  159. erlebnis wäre nicht so berauschend.
  160.  
  161. 3.4) Button 'Stop'
  162. ------------------
  163.  
  164. Wird während des Abspielens eines SMFs  der 'Stop'-Button angeklickt  und  ge-
  165. drückt gehalten, so wird das Abspielen abgebrochen.
  166. (Dass die Maustaste länger gedrückt gehalten werden muss liegt daran,  daß die
  167. Abspielalgorithmen-Schleife pro Schleifendurchlauf nur  an  einer  Stelle  die
  168. interne Abbruchfunktion aufruft,  welche wiederum den *aktuellen* Zustand  der
  169. Maustasten ermittelt. Wenn eine Maustaste gedrückt und wiederlosgelassen wird,
  170. bevor die Abbruchfunktion aufgerufen wurde, ermittlet die Abbruchfunktion kein
  171. aktuelles Mausereignis, und bricht somit auch nicht ab.)
  172. Insbesondere beim Abspielen von SMFs,  die SysEx-Daten  (z.B. Soundbank-Dumps)
  173. enthalten kann es länger dauern, bis die Abbruchfunktion anspricht.
  174. (SysEx-Daten werden in einer eigenen, nicht abbrechbaren Schleife behandelt!)
  175.  
  176. Alternativ kann auch mit der Tastenkombination 'CTRL-C' das  Abspielen  abge-
  177. brochen werden.  Auch hierbei trifft sinngemäß das oben gesagte zu,  d.h.  es
  178. dauert etwas, bis tatsächlich abgebrochen wird!
  179.  
  180. Das Abspielen kann danach nicht fortgesetzt werden,  sondern muß  wieder  vom
  181. Anfang beginnen!
  182.  
  183. 3.5) Button 'Info'
  184. ------------------
  185.  
  186. Wie schon erwähnt ist dies der absolut wichtigste Button,  der unbedingt mehr-
  187. mals betätigt werden muß,  damit jeder weiß,  wer denn  dieses  Programm  ver-
  188. brochen hat.  Ach übrigens ist auch diese Funktion ist durch  eine  Tastenkom-
  189. bination (Alternate-I) aufrufbar - wichtig für Maushasser!
  190.  
  191. 3.6) Button 'Quit'
  192. ------------------
  193.  
  194. Fast hätte ich es vergessen,  auch diesen Button zu erwähnen,  da  dieser  die
  195. wohl überflüssigste Funktion des Programmes  aufruft.  Also  über  den  Button
  196. 'Quit',  bzw.  der Tastenkombination  'Alternate-Q'  oder  'RETURN'  (Default-
  197. Button) kann das Programm beendet werden. Ich weiß aber wirklich nicht, zu was
  198. man diese Funktion denn brauchen sollte ;-).
  199.  
  200. Dummerweise kann das Programm auch darüberhinaus beendet werden,  wenn mit der
  201. Maus auf das Schließfeld des GEM-Fensters (links oben) geklickt wird.
  202.  
  203. Alle von diesem Programm benutzten  Fenster  (soweit  geöffnet)  werden  dabei
  204. geschlossen und freigegeben.
  205.  
  206.  
  207. 4) Die Settings-Dialogbox
  208. =========================
  209.  
  210. In der Settings-Dialogbox können einige Abspielparameter eingestellt werden:
  211.  
  212.  - Program Change
  213.  
  214.  - Control Change
  215.  
  216.  - Pitch Bend
  217.  
  218.  - Channel Pressure
  219.  
  220.  - Polyphonic Key Pressure
  221.  
  222.  - System Exclusive
  223.  
  224.  - Bank Select
  225.  
  226.  - MIDI Clock
  227.  
  228. Es kann also jeweils eingestellt  werden,  ob  die  entsprechenden  MIDI-Nach-
  229. richten beim Abspielen mit gesendet oder herausgefiltert  werden  sollen.  Die
  230. angekreuzten Event-Arten werden gesendet.  Damit diese Events gesendet  werden
  231. können müssen sich diese natürlich im abzuspielenden SMF befinden.
  232.  
  233. Eine Ausnahme ist dabei natürlich 'MIDI Clock'.  Diese Nachrichten werden beim
  234. Abspielen  vom Programm erzeugt,  sofern der Eintrag angekreutzt ist.  Externe
  235. Geräte dürften sich damit synchronisieren lassen (z.B. um SMFs in Sequenzer zu
  236. überspielen, die das SMF-Format nicht lesen können).
  237.  
  238. Eine weitere Sonderstellung nimmt dabei 'Bank Select' ein, da dieser Befehl zu
  239. Control Changes zu zählen ist  und damit mit den entsprechenden Schalter abge-
  240. deckt ist.
  241.  
  242. Abhängig von der Einstellung des Control-Change-Schalters  kann nun eingstellt
  243. werden,  ob die entsprechenden Bank-Select Befehle gesendet werden sollen oder
  244. nicht, d.h. wenn Control-Change eingeschaltet ist kann mit Bank Select separat
  245. eingestellt werden, ob auch diese mitgesendet werden sollen.
  246.  
  247. Hintergrund für die Aufnahme dieses Schalters  war der  Korg 03R/W,  da dieser
  248. die GM-Soundbank über Bank 1 anspricht.  Einige SMFs  senden allerdings am An-
  249. fang generell einen Bank-Select-Befehl  für Bank 0  -  in dieser Bank sind die
  250. Programs (Korg Sprache) organisiert,  die normalerweise nicht nach GM-Standard
  251. sortiert sind, was bei solchen SMFs wieder zu (möglichen) falschen Klangzuord-
  252. nungnen führt,  die mit GM eigentlich vermieden werden sollten (natürlich kann
  253. man sich die GM-kompatible Soundbank dorthin kopieren, allerdings stehen dafür
  254. nur 100 Programmplätze zur Verfügung).
  255. Schaltet man, um diese Probleme zu umgehen, generell den Control-Change-Schal-
  256. ter aus,  werden  zwar  die Bank-Select-Befehle unterdrückt  (was ja gewünscht
  257. ist),  aber auch alle anderen Control-Befehle  (wie z.B. Volume)  werden nicht
  258. gesendet.
  259. Fazit:  Der Bank Select Befehl wird nun unabhängig von den anderen Control-Be-
  260. fehlen gesendet oder nicht.
  261.  
  262.  
  263. Die Einstellungen lassen sich auch mit der Tastatur  vornehmen,  jeweils  über
  264. gleichzeitiges Drücken der Alternate und des unterstrichenen Buchstaben,  also
  265. bei 'Program Change' ist 'Alternate-P' zu drücken.
  266.  
  267. Die Settings-Box bietet drei Buttons:
  268.  
  269.  - Abort - 'Alternate-A'
  270.  
  271.    Damit wird die Dialogbox verlassen (das Fenster wird geschlossen).  Die ge-
  272.    machten Einstellungen werden nicht übernommen,  d.h.  werden beim Abspielen
  273.    nicht berücksichtigt.  Beim nächsten Aufruf der Settings-Box sind  die  ur-
  274.    sprünglichen Einstellungen zu sehen.
  275.  
  276.  - OK - 'Alternate-O' bzw. 'RETURN'
  277.  
  278.    Damit wird die Dialogbox ebenfalls verlassen  (Fenster  wird  geschlossen).
  279.    Die gemachten Einstellungen werden übernommen,  d.h.  beim Abspielen werden
  280.    diese berücksichtigt.
  281.  
  282.  - Set - 'Alternate-S'
  283.  
  284.    Damit werden die Einstellungen als aktuelle Einstellungen übernommen,  d.h.
  285.    beim Abspielen werden  diese  berücksichtigt.  Die  Dialogbox  bleibt  aber
  286.    geöffnet.
  287.  
  288. Wird die Settings-Box über Mausklick auf das Schließfeld des GEM-Fensters ver-
  289. lassen,  entspricht dies dem 'Abort'-Button,  d.h. die gemachten Einstellungen
  290. werden nicht übernommen.
  291.  
  292.  
  293. 5) Die Copyright-Dialogbox
  294. ==========================
  295.  
  296. Die wohl wichtigste Dialogbox,  die durch den wichtigsten Info-Button bzw. der
  297. wichtigsten Tastenkombination erscheint!
  298.  
  299. Also das Anzeigen dieser Dialogbox ist wirklich die wichtigste Funktion im ge-
  300. samten Programm ...
  301.  
  302. ...für mich, weil ich meinen Namen in eigenen Programmen so gerne lese.
  303.  
  304. Um unter dieser Überschrift doch noch etwas sinnvolles zu  schreiben:  In  der
  305. Copyrightbox erscheint als Versionskennung das Kompilierungs-Datum.  Also  das
  306. jeweils jüngste Datum gibt die  aktuellste  Version  an.  -  Dieses  Verfahren
  307. scheint mir sinnvoller als jeweils nach kleinen Programmänderungen  eine  neue
  308. kryptische Versionsnummer wie z.B.  1.3hjsd8k4r0xycjotvjß8qw42mcnc834cm439812s
  309. zu erfinden, vor allem, da ich häufig wirklich nur kleine Sachen verändere.
  310.  
  311. (Nebenbei   bemerkt:    Wann   kommt   'Die   nackte    Kanone    sqrt(197136)
  312. (sin(ln(1938668.947)' = 'Die nackte Kanone 444 1/4' ins Kino? ;-))
  313.  
  314. Und noch was: Wird versucht die Copyrightbox über den 'More'-Button zu verlas-
  315. sen wird aus der Copyrightbox plötzlich die 'Credits'-Box. (Waaahnsinn!)
  316.  
  317.  
  318. 6) Beschränkungen des Programms bzgl. Standard-MIDI-Files
  319. =========================================================
  320.  
  321.  - 'SMF-PLAYer' kann SMFs mit Format 0 und 1 abspielen.  Bei Format  1  dürfen
  322.    bis zu 32 Tracks enthalten sein.
  323.  
  324.  - Aus speicherverwaltungstechnischen Gründen wurde  die  maximale  Dateilänge
  325.    eines auf SMFs 131072 Bytes (= 128 kByte)  begrenzt.  Längere  SMFs  können
  326.    nicht geladen werden! (Im Programm wird ein  statischer  Buffer  der  Größe
  327.    128kB für SMFs angelegt,  keine dynamische Speicherverwaltung!  Der  Buffer
  328.    könnte auch größer angelegt werden,  aber die 128kB dürften meiner  Meinung
  329.    nach in den meisten Fällen reichen.)
  330.  
  331.  - SMFs,  die im  Running-Mode  abgespeichert  wurden,  werden  möglicherweise
  332.    falsch abgespielt.
  333.  
  334.    Dies konnte mangelns Running-Mode-SMFs noch nicht getestet  werden  (bisher
  335.    nur getestet mit SMFs mit Note-On/Off und Damper-Pedal). - Wer hat Running-
  336.    Mode-SMFs und kann mir solche zur Verfügung  stellen  (diese  sollten  alle
  337.    Event-Arten enthalten),  bzw.  welcher (Atari-) Sequenzer speichert  solche
  338.    SMFs. (Können auch SysEx-Daten im Running-Mode via MIDI gesendet werden?)
  339.  
  340.  
  341. 7) Systemanforderungen
  342. ======================
  343.  
  344.  - Das Programm dürfte mit allen ST,  STE, Mega ST, Mega STE, TT, Falcon Rech-
  345.    nern problemlos betrieben werden können.
  346.  
  347.  - Für den Betrieb wird ca. 200kB freie Speicher benötigt, es dürfte also auch
  348.    auf Rechnern mit nur 512kB funktionieren.
  349.  
  350.  - Das Programm müßte mit allen TOS-Versionen klarkommen.
  351.  
  352.  - Das Programm wurde ursprünglich für die Auflösung ST-High programmiert. Die
  353.    Resourcedatei für die hohe Auflösung ist im Programm bereits enthalten, für
  354.    ST-Medium und ST-Low  ist  die  separate  Resourcedatei  'SMF_MED.RSC'  ins
  355.    gleiche Verzeichnis wie das Programm zu kopieren (es  werden  bisher  keine
  356.    Farben benutzt).
  357.  
  358.    Falls die Resource-Datei nicht gefunden  wird  wird  das  Programm  dennoch
  359.    gestartet und die Resource der hohen Auflösung benutzt,  mit dem  Ergebnis,
  360.    daß die  die  Bildschirmdarstellung  der  Dialogboxen  etwas  durcheinander
  361.    kommt. Das Programm selbst ist dabei voll funktionstüchtig!
  362.  
  363.  - Ein Betrieb mit Grafikkarten müßte funktionieren,  wurde aber mangelns Gra-
  364.    fikkarte noch nicht ausprobiert.
  365.  
  366.  - Getestet wurde das Programm bisher nur auf einem Mega STE mit  TOS 2.6  und
  367.    einem alten 520 ST mit TOS 1.0.
  368.  
  369. 7.1) Betrieb als Programm
  370. -------------------------
  371.  
  372. Hierzu fällt mir gar nichts ein, steht ja schon alles im vorherigen Abschnitt.
  373.  
  374. 7.2) Betrieb als Accessory
  375. --------------------------
  376.  
  377. Durch Umbenennen in SMF_PLAY.ACC läßt sich das  Programm  auch  als  Accessory
  378. einsetzen.
  379.  
  380. Während ein SMF abgespielt wird,  werden allerdings alle anderen Appliaktionen
  381. gestoppt,  d.h. ein gleichzeitiges abspielen und weiterarbeiten ist nicht mög-
  382. lich.
  383.  
  384. Die Resourcedatei für die niedrige bzw.  mittlere Auflösung muß dabei im  Ver-
  385. zeichnis liegen,  aus dem auch die Accessories gestartet werden, also i.d.R im
  386. Wurzelverzeichnis des Laufwerkes C.
  387.  
  388. 8) Sonstiges
  389. ============
  390.  
  391. 8.1) Automatisches Laden - Übergabeparameter
  392. --------------------------------------------
  393.  
  394. Es ist auch möglich,  dem Programm beim Starten einen  kompletten  Pfad  eines
  395. SMFs mitzugeben, welches dann automatisch geladen wird.
  396.  
  397. Z.B.  könnte unter 'Anwendung anmelden' 'MID' eingetragen werden,  damit  beim
  398. Anklicken einer  '*.MID'-Datei  das  Programm  gestartet  wird  und  die  ent-
  399. sprechende Datei einliest.
  400.  
  401. 8.2) Abbrechen des Abspielvorganges
  402. -----------------------------------
  403.  
  404. Manchmal will man ein SMF  auch  nicht  komplett  anhören,  deshalb  kann  das
  405. Abspielen mit der Tastenkombination 'CTRL-C'  abgebrochen  werden.  Das  Fort-
  406. setzen des Abspielens ist nicht möglich, es muß wieder von vorne begonnen wer-
  407. den.
  408.  
  409. Manche SMFs haben am Ende 'unendlich' lange Pausen,  die dazu führen, daß nach
  410. dem Abspielen (also wenn keine eigentlichen MIDI-Daten mehr ausgegeben werden)
  411. der SMF-PLAYer noch im Abspielvorgang befindet, da der Abspielalgorithmus noch
  412. auf alle 'End of Track'-Kennungen wartet.  In einem solchen Fall läßt sich das
  413. Abspielen mit dieser Tastenkombination unterbrechen.
  414.  
  415.  
  416. 9) In eigener Sache
  417. ===================
  418.  
  419. 9.1) Werbung - Andere MIDI-Programme von mir
  420. --------------------------------------------
  421.  
  422.  - P_PLAYER.PRG - Standard-MIDI-File-Player mit Anzeige der  gespielten  Noten
  423.    auf einem Bildschirmkeyboard (standard-MIDI-File-player (shows what is cur-
  424.    rently played)),  zu finden  auf dem Ftp-Server  der  Uni-Erlangen/Nürnberg
  425.    ftp.uni-erlangen.de - /pub/atari/sound/player/midi/p_player.lha
  426.  
  427.  - MidiKla4.APP - Zeigt die auf einem angeschlossen  MIDI-Keyboard  gedrückten
  428.    Tasten  auf einem Bildschirmkeyboard an  (show  key-presses  on an attached
  429.    MIDI-keyboard)
  430.  
  431.    Das Programm MidiKla4.APP ist der Key-Monitor des Piano-Players  als  sepa-
  432.    rates Programm,  funktioniert auch als Accessory,  zu finden auf  dem  Ftp-
  433.    Server der Uni-Erlangen/Nürnberg:
  434.    ftp.uni-erlangen.de - pub/atari/sounds/misc/midikla4.lzh
  435.  
  436.  - Das Programm SMF_LOAD.PRG beinhaltet die im Piano-Player noch nicht  einge-
  437.    baute Analyse-Funktion.
  438.  
  439.  - GM_SLCTR.APP - Soundauswahlprogramm  für  General-MIDI  Musikmodule (sound-
  440.    selecter for General-MIDI music-mudules), funktioniert auch als Accessory,
  441.    zu finden auf dem Ftp-Server der Uni-Erlangen/Nürnberg:
  442.    ftp.uni-erlangen.de - pub/atari/sounds/player/midi/gm_slctr.lzh
  443.  
  444.  - GM_03R_W.APP - Soundauswahlprogramm für KORG 03R/W.  (Funktioniert auch als
  445.    Accessory!)
  446.  
  447.  - O3RWGMME.APP - General-MIDI-Multiset-Editor für Korg O3R/W:
  448.                   Erlaubt das Abspeichern von Multisets als Standard-MIDI-File
  449.                   Funktioniert auch als Accessory!
  450.  
  451. 9.2) Credits
  452. ------------
  453.  
  454.  - Das Programm wurde vollständig in der Programmiersprache C  geschrieben  --
  455.    mit Pure C (V. 1.1).
  456.  
  457.  - Die Resourcen wurden mit Interface erstellt.
  458.  
  459.  - Als Bibliothek für die Dialogboxen kam 'MyDials' von Olaf Meisiek zum  Ein-
  460.    satz.
  461.  
  462.  - Als Bibliothek für Tastatureingaben kam NKCC von Harald Siegmund  zum  Ein-
  463.    satz.
  464.  
  465.  - Der Abspielalgorithmus basiert im wesentlichen auf dem von Steve  Goldthorp
  466.    im Juli '91 freigegebenen 'midi file interpreter for midiplay',  sowie  auf
  467.    die geänderte Version midiplay 0.5 von Piet van Oostrum.
  468.  
  469.    midiplay.zoo 0.5 ist z.B. auf dem niederländischen FTP-Server ftp.cs.ruu.nl
  470.    unter pub/MIDI/PROGRAMS/ATARI/midiplay.zoo zu finden, bzw. liegt als LHarc-
  471.    Archiv in einigen Mäusen herum.
  472.  
  473. 9.3) Aufruf an Benutzer des Programmes
  474. --------------------------------------
  475.  
  476. Wer Interesse an den Programmsourcen hat (die sind allerdings nicht sehr  auf-
  477. regend) möge mir eine Diskette (evtl. mit PD-Programmen) und einen frankierten
  478. Rückumschlag zusenden.  Evtl. gibt's dann auch eine neuere Programmversion, in
  479. der zumindest die bis dahin gefundenen Fehler behoben sein sollten,  und  mög-
  480. licherweise ein paar SMF's.
  481.  
  482. Wer eigene SMF's hat,  die mit dem Programm abgespielt werden können, darf mir
  483. diese gerne zusenden (macht sowieso keiner!!!).  Ich warte immer noch auf  den
  484. ersten,  der es wagt,  mir eigene Songs, also nicht nur schlecht kopierte Imi-
  485. tationen,  sondern selbst komponierte Stücke zusendet - keine Angst, ich klaue
  486. Deine Ideen nicht!
  487.  
  488. Anregungen für Verbesserungsmöglichkeiten,  weiteren Funktionen,  aufgetretene
  489. Fehler können/sollten mir mitgeteilt werden.  (Daß auch das niemand macht  ist
  490. mir natürlich bekannt!)
  491.  
  492. Ansonsten sind Spenden aller Art willkommen. (-> FAIRWARE)
  493. (Ach halt, mit Blutspenden kann ich momentan nicht viel anfangen -
  494. die sind z.B. beim Roten Kreuz besser aufgehoben!)
  495.  
  496. 9.4) Geplantes...
  497. -----------------
  498.  
  499.  - Für eine spätere Programmversion ist geplant,  mein Programm  'GM-Selector'
  500.    mit in den SMF-Player zu intergrieren,  so  daß  beispielsweise  für  jeden
  501.    MIDI-Kanal im GM-Selector ein Klang ausgewählt werden kann.
  502.  
  503.  - Das Programm 'GM-Selector' soll auch durch eine 'Multi-Set'-Verwaltung  er-
  504.    weitert werden (da der Korg 03R/W nur ein Multiset besitzt).
  505.  
  506.    Der Bank-Select-Befehl soll ebenfalls mit  integriert  werden  (interessant
  507.    für Sound-Canvas-User).
  508.  
  509.  - Vor kurzem gab es in einer News-Gruppe im Internet (alt.sounds.midi oder so
  510.    ähnlich) ein SMF-Analyse-Programm für PCs (MidiCat v1.0).  Da mir ein  ähn-
  511.    liches Programm für die Atari-Rechner nicht bekannt ist,  wäre es  interes-
  512.    sant etwas ähnliches zu programmieren.
  513.  
  514.    Hier ein kurzer Auszug der Dokumentation von MidiCat v1.0:
  515.  
  516.    MidiCat looks through your MIDI files and summarizes the important informa-
  517.    tion in a one-line-per-file mode for cataloging or a more verbose  informa-
  518.    tional mode.  It also tracks General MIDI Instrument and Drum usage  within
  519.    the file for analysis.
  520.                                                                    Ron Dippold
  521.  
  522.  - Wer sonstige Ideen/Erweiterungen hat möge sie mir mitteilen!
  523.  
  524.  
  525. 10) Nutzungs-, Verbreitungs- und sonstige Bestimmungen
  526. ======================================================
  527.  
  528. 10.1) Nutzungsbestimmungen
  529. --------------------------
  530.  
  531.   1) Das Programm/die Programme darf/dürfen von
  532.  
  533.       a) jedermann,
  534.  
  535.       b) jederfrau,
  536.  
  537.       c) sonstigen Lebewesen,  die sich unter 1 a) und 1 b) nicht angesprochen
  538.          fühlen (d.h.  also nicht nur die auf Kohlenstoff basierenden  Lebens-
  539.          formen, sondern auch alle anderen)
  540.  
  541.      benutzt werden.
  542.  
  543.   2) Das Programm/die Programme darf/dürfen von den unter  1)  genannten  Per-
  544.      sonen frei kopiert und weitergegeben werden (d.h.  von alle  PersonInnen/
  545.      Etwase),  soweit alle Dateien,  die in 'INHOUD.TXT' angegeben sind  dabei
  546.      weitergegeben  werden.  Ausgenommen  davon  sind  gewerbliche Vertreiber,
  547.      genaueres siehe unter 'Vertrieb'!
  548.  
  549.   3) Das Programm/die Programme und die beiliegenden Hilfstexte darf/dürfen in
  550.      keiner Weise verändert werden.
  551.  
  552. 10.2) Vertrieb
  553. --------------
  554.  
  555.   1) Der Verkauf des Programmes/der Programme ist unter keinen  Umständen  er-
  556.      laubt.
  557.  
  558.   2) Das Vertreiben des Programmes/der Programme in Mailboxen ist ausdrücklich
  559.      erwünscht,  sofern es sich um nicht-komerzielle Mailboxen handelt. Hierzu
  560.      ist auch das Packen des Programmes/der Programme  erlaubt,  sofern  dabei
  561.      alle Dateien, die in 'INHOUD.TXT' angegeben sind weitergegeben werden.
  562.  
  563.      Der Vertrieb über kostenpflichtige  Mailboxsysteme,  'Channel  Videodat',
  564.      etc. ist nicht erlaubt, ebenso ist die Aufnahme des Programmes auf CD-ROM
  565.      ohne vorherige Absprache mit mir nicht gestattet.
  566.  
  567.   3) PD-Versender dürfen das Programm/die Programme in Ihre Serien  oder  Lie-
  568.      ferprogramme aufnehmen,  sofern der 'Kopierpreis' pro Diskette nicht mehr
  569.      als DM 5.- beträgt (einschl. der Diskette)!
  570.  
  571.      Ich erwarte allerdings eine kurze Mitteilung,  wenn jemand das  Programm/
  572.      die Programme aufnehmen will (z.B. Postkarte, email), damit gewährleistet
  573.      wird,  das die zu dem Zeitpunkt jeweils aktuellste Version veröffentlicht
  574.      wird.
  575.  
  576.   4) Wenn das Programm/die Programme in eine MIDI-Programmsammlung (bzw.  eine
  577.      Zusammenstellung mehrerer MIDI-Programme zu einem Paket)  eines  PD-Händ-
  578.      lers aufgenommen werden soll,  so  ist  dafür  bei  mir  eine  gesonderte
  579.      Erlaubnis einzuholen!
  580.  
  581.   5) Gewerbliche Vertreiber von Sequenzer-Songs,  die das Programm mit diesen
  582.      Sequenzer-Songs  weitergeben wollen müssen ebenfalls eine gesonderte Er-
  583.      laubnis dafür bei mir einholen!
  584.  
  585.  
  586. 10.3) Haftung
  587. -------------
  588.  
  589.   1) Für Schäden,  die durch durch den Einsatz dieses  Programmes/dieser  Pro-
  590.      gramme direkt oder indirekt an Hard-,  Soft- oder sonstiger -ware entste-
  591.      hen können,  sowie für alle sonstigen Schäden irgendwelcher Art (z.B. den
  592.      nächsten Börsencrash,  dem Erdbeben in LA oder das Aprilwetter) übernehme
  593.      ich keine Verantwortung.  Die Benutzung des Programmes erfolgt auf eigene
  594.      Gefahr!
  595.  
  596.   2) Die vollständige Fehlerfreiheit des  Programmes/der  Programme  kann  von
  597.      meiner Seite aus nicht garantiert werden.  -  Falls  ein  Benutzer  einen
  598.      Programmfehler finden sollte,  darf er ihn für sich behalten,  oder,  was
  599.      vielleicht etwas besser wäre, darf er mir auch mitgeteilt werden.
  600.  
  601. 10.4) Updates
  602. -------------
  603.  
  604.   1) Schriftliche Anfragen bei mir bzgl. neuer Versionen, bzw. neuer Programme
  605.      sind erlaubt (Anrufe werden  nicht  angenommen!!!),  werden  aber  i.d.R.
  606.      zeitlich verzögert beantwortet,  sofern ausreichend  Rückporto  beiliegt.
  607.      (Die Schreiben,  denen kein Rückporto beiliegt werden  gelesen,  gelocht,
  608.      abgeheftet und in den nächsten Papiercontainer befördert.)
  609.  
  610.      Emails werden i.d.R.  nur während der Vorlesungszeit  in  jeweiligen  Se-
  611.      mester beantwortet,  da ich während der  Semesterferien  selten  am  Uni-
  612.      Rechner anzutreffen bin.  (Vielleicht schenkt mir bald jemand ein  Modem,
  613.      damit ich auch anderweitig anzutreffen bin. ;-))
  614.  
  615.   2) Updates   der  Programme   (wenn's  denn  solche  geben  sollte)   werden
  616.      voraussichtlich    über   den   Ftp-Server    der   Uni-Erlangen/Nürnberg
  617.      (ftp.uni-erlangen.de - Verzeichnis pub/atari/sounds/...) unter die  Leute
  618.      gebracht, oder über PD-Versender sofern sich diese bei mir gemeldet haben
  619.      - s.o.
  620.  
  621.      Letzteres kann aber nicht garantiert  werden,  da  die  meine  Portokasse
  622.      immer an  gähnender  Leere  leidet,  weswegen  wahrscheinlich  nur  einer
  623.      (einige?) beliefert wird.
  624.      (Vielleicht werden neue/verbesserte Programme auch nur  noch  über  Mail-
  625.      boxen verbreitet - s.o., wenn ich endlich ein Modem besäße.)
  626.  
  627.      Wer mir einen ordnungsgemäß frankierten Rückumschlag  und  eine  Diskette
  628.      (bitte mit Public Domain-, Shareware-, Freeware-  oder  sonstiger -ware?)
  629.      zusendet, bekommt die jeweils aktuellste Version.
  630.      (Bitte das Versions-Datum aus der Info-Box mit angeben!)
  631.  
  632. 10.5) Warenzeichen
  633. ------------------
  634.  
  635. Die in dem Programm,  bzw.  der Dokumentation genannten Soft- und Hardwarepro-
  636. dukte,  Zeitschriftennamen bzw. genannte Produktnamen Atari ST, STE, Mega STE,
  637. TT,  Falcon,  Pure C, Interface, Mag!X, MultiTOS u.a. sind eingetragene Waren-
  638. zeichen ihrer Eigentümer und als solche gesetzlich geschützt.  Aus dem  Fehlen
  639. einer gesonderten Kennzeichnung kann also nicht geschlossen  werden,  daß  ein
  640. Name frei von Rechten Dritter ist.
  641.  
  642.  
  643. 11) Schlußwort
  644. ==============
  645.  
  646. Endlich bin ich fertig mit dem Schreiben dieser Anleitung, die nun tatsächlich
  647. (noch) nicht länger als das eigentliche Programm geworden ist.
  648.  
  649. Nun bin ich mal gespannt, wie lange es dauert bis alle in dieser Dokumentation
  650. gemachten Aussagen falsch sind,  da ich möglicherweise alle Programmfunktionen
  651. verändere.
  652.  
  653.  
  654. 12) Literatur
  655. =============
  656.  
  657.  [1] Kernighan/Ritchie: <Programmieren in C>.
  658.      Hanser Verlag. 1990.
  659.  
  660.  [2] Peter Kaminski: <Die MIDI-Spezifikation>.
  661.      Erschienen in der Zeitschrift Keyboards, MM-Musik-Media-Verlag, 1991.
  662.  
  663.  [3] Dr. Bernd Enders/Wolfgang Klemme: <Das MIDI- und SOUND-Buch zum ATARI ST>
  664.      Markt & Technik Verlag, 1988.
  665.  
  666.  [4] Dietmar Lorenz: <MIDI-Software selber schreiben>.
  667.      GC Gunther Carstensen Verlag, 1990.
  668.  
  669.  [5] Richard Aicher: <Das MIDI Praxisbuch>.
  670.      Signum Medien Verlag, 1987.
  671.  
  672.  [6] <MIDI in C / Programmierer an die  Front>.
  673.      68000er ST-magazin 6/91 - 8/91, Markt & Technik.
  674.  
  675.  [7] Siegfried Just: <MIDITALK - Standard MIDI-Files>.
  676.      ST-Computer 12/90. Heim-Verlag, S. 144ff,
  677.  
  678.  [8] Michael Cxelperger: <Introducing Standard MIDI File>.
  679.      Electronic Musican, April 1989, S. 50ff
  680.  
  681.  [9] <Standard-MIDI-File in C / Babylon  entschlüsselt>.
  682.      68000er ST-magazin 10/91 - 11/91, Markt & Technik.
  683.  
  684. [10] Jankowski/Rabbich/Reschke: <ATARI Profibuch ST-STE-TT>.
  685.      Sybex Verlag, 11. Auflage, 1992
  686.  
  687. [11] Dieter Geiß/Jürgen Geiß: <Vom Anfänger zum GEM-Profi>.
  688.      Hüthig Buch Verlag, 3. Auflage, 1992
  689.  
  690. [12] Kai Schwirzke:  <MIDI macht die Musik - Standard MIDI-File-Format>.
  691.      c't - magazin für computer technik 07/93, S.232ff Heise Verlag
  692.  
  693. [13] Justus Noll: <Musik-Programmierung>. Addison Wesley, 1994.
  694.  
  695. /*
  696.  * fin
  697.  */
  698.  
  699.